﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace KioskosJugandoLimpio.Classes
{
    public class Respuesta
    {
        public Ciudadano ciudadano;
        public Pregunta pregunta;
        public List<Opcion> opciones;
        public string respuesta;
        private Encuesta encuesta;
        public Respuesta() {
            opciones = new List<Opcion>();
        }


        public Respuesta(Encuesta encuesta):this()
        {
            // TODO: Complete member initialization
            this.encuesta = encuesta;
        }

        internal void guardar()
        {
            if (opciones.Count == 0)
            {
                SQL.fnExec(string.Format("EXEC guardarRespuesta '{0}',{1},{2},null,{3}", respuesta, ciudadano.idCiudadanos, pregunta.idPreguntas, encuesta.idEncuestas));
            }
            else
            {
                foreach (Opcion opcion in opciones)
                {
                    SQL.fnExec(string.Format("EXEC guardarRespuesta null,{0},{1},{2},{3}", ciudadano.idCiudadanos, pregunta.idPreguntas, opcion.idOpciones, encuesta.idEncuestas));
                }
            }
        }
        internal void guardar(System.Data.SqlClient.SqlTransaction tran)
        {
            if (opciones.Count == 0)
            {
                SQL.fnExec(string.Format("EXEC guardarRespuesta '{0}',{1},{2},null,{3}", respuesta, ciudadano.idCiudadanos, pregunta.idPreguntas, encuesta.idEncuestas),tran);
            }
            else
            {
                foreach (Opcion opcion in opciones)
                {
                    SQL.fnExec(string.Format("EXEC guardarRespuesta null,{0},{1},{2},{3}", ciudadano.idCiudadanos, pregunta.idPreguntas, opcion.idOpciones, encuesta.idEncuestas), tran);
                }
            }
        }
    }
}
